<?php
require 'logging.php';
require 'download.php';
require 'util.php';
require 'ziptool.php';
require 'process_file.php';
require 'package.php';

/*

  打包要做以下工作：

  - 去掉PHP文件中的注释
    - 两个配置文件不修改注释
    - 所有文件头部的版权声明不去掉
  - 对于GBK
    - 
  - 对于繁体
    - 替换图片
    - 所有文本文件语言换成繁体
    - css中的字体，simsum换成mingliu
    - 设置config_global_default.php中 $_config['output']['language'] = 'zh_tw'
    - lang/lang_template.php中，宋体->细明体，新宋体->新细明体, simsun->mingliu, 楷体_GB2312->标楷体

 */

// 检查所需extension
check_necessary_extension();

// 启动时提示
if (abort_on_start_warning()) {
    exit(1);
}

// 删除并重建下载目录
rrmdir("download");
mkdir("download");

// 删除并重建工作目录
rrmdir("working");
mkdir("working");

// 删除并重建发布目录
rrmdir("dist");
mkdir("dist");

// 下载并解压缩
download_master_zip("download/master.zip");
extract_zip('download/master.zip', 'working/extracted');

$EXTRACTED_DIR = 'working/extracted/DiscuzX/';
$MINIFIED_DIR = 'working/minified';

// 清理解压缩后的结果
rrmdir($EXTRACTED_DIR."upload/uc_server/release/20080429");
rrmdir($EXTRACTED_DIR."upload/uc_server/upgrade");
rmfile($EXTRACTED_DIR."upload/api/addons/zendcheck.php");
rmfile($EXTRACTED_DIR."upload/api/addons/zendcheck52.php");
rmfile($EXTRACTED_DIR."upload/api/addons/zendcheck53.php");
rmfile($EXTRACTED_DIR."README.md");

// 清理PHP文件中的注释
strip_all_php_files($EXTRACTED_DIR, $MINIFIED_DIR);

// Minify 所有JavaScript文件。.min.js结尾的文件不二次处理
strip_all_js_files($EXTRACTED_DIR, $MINIFIED_DIR);

// 所有非PHP，非JS文件，复制到目标目录
copy_all_other_files($EXTRACTED_DIR, $MINIFIED_DIR);


// 准备打包
// prepare_package("SC_GBK", $MINIFIED_DIR);
prepare_package("TC_UTF8", $MINIFIED_DIR);
// prepare_package("SC_GBK", $MINIFIED_DIR);
